home *** CD-ROM | disk | FTP | other *** search
/ Turnbull China Bikeride / Turnbull China Bikeride - Disc 2.iso / STUTTGART / LANG / C / LIB / DESK / CORE / Desk / h / File < prev    next >
Text File  |  1996-06-26  |  6KB  |  141 lines

  1.  
  2. #ifndef __Desk_File_h
  3. #define __Desk_File_h
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. #ifndef __Desk_Core_h
  8. #include "Desk.Core.h"
  9. #endif
  10. #ifndef __Desk_SWI_h
  11. #include "Desk.SWI.h"
  12. #endif
  13. #ifndef __Desk_Error2_h
  14. #include "Desk.Error2.h"
  15. #endif
  16. extern void Desk_File_Delete(const char *filename);
  17. extern int Desk_File_Size(const char *filename);
  18. extern Desk_bool Desk_File_Exists(const char *filename);
  19. typedef int Desk_file_position;
  20. typedef int Desk_file_handle;
  21. #define Desk_file_READERROR (-1)
  22. typedef enum
  23. {
  24. Desk_file_READ = 0x40, 
  25. Desk_file_WRITE = 0x80, 
  26. Desk_file_APPEND = 0xC0 
  27. } Desk_file_access;
  28. extern Desk_file_handle Desk_File_Open(const char *filename, Desk_file_access access);
  29. extern void Desk_File_Close(Desk_file_handle handle);
  30. extern Desk_bool Desk_File_EOF(Desk_file_handle handle);
  31. extern void Desk_File_Seek(Desk_file_handle handle, Desk_file_position position);
  32. extern Desk_file_position Desk_File_ReturnPos(Desk_file_handle handle);
  33. extern int Desk_File_ReadExtent(Desk_file_handle handle);
  34. extern void Desk_File_WriteBytes(Desk_file_handle handle,
  35. const void *buffer, int numbytes);
  36. extern int Desk_File_ReadBytes(Desk_file_handle handle, void *buffer, int numbytes);
  37. extern void Desk_File_Write8(Desk_file_handle handle, int byte);
  38. #define Desk_File_WriteByte Desk_File_Write8
  39. #define Desk_File_WriteChar Desk_File_Write8
  40. extern int Desk_File_Read8(Desk_file_handle handle);
  41. #define Desk_File_ReadByte Desk_File_Read8
  42. #define Desk_File_ReadChar Desk_File_Read8
  43. extern void Desk_File_Write32(Desk_file_handle handle, int word);
  44. #define Desk_File_WriteWord Desk_File_Write32
  45. #define Desk_File_WriteInt Desk_File_Write32
  46. #define Desk_File_WriteLong Desk_File_Write32
  47. extern int Desk_File_Read32(Desk_file_handle handle);
  48. #define Desk_File_ReadWord Desk_File_Read32
  49. #define Desk_File_ReadInt Desk_File_Read32
  50. #define Desk_File_ReadLong Desk_File_Read32
  51. extern int Desk_File_Read32R(Desk_file_handle handle);
  52. #define Desk_File_ReadWordR Desk_File_Read32R
  53. #define Desk_File_ReadIntR Desk_File_Read32R
  54. #define Desk_File_ReadLongR Desk_File_Read32R
  55. extern void Desk_File_Write32R(Desk_file_handle handle, int word);
  56. #define Desk_File_WriteWordR Desk_File_Write32R
  57. #define Desk_File_WriteIntR Desk_File_Write32R
  58. #define Desk_File_WriteLongR Desk_File_Write32R
  59. extern void Desk_File_SetType(const char *filename, int type);
  60. extern void Desk_File_SetLoad(const char *filename, int load);
  61. extern void Desk_File_SetExec(const char *filename, int exec);
  62. extern void Desk_File_CreateDirectory(const char *dirname);
  63. extern int Desk_File_GetType(const char *filename);
  64. int Desk_File_GetLength(const char* filename);
  65. extern Desk_bool Desk_File_IsDirectory(const char *pathname);
  66. extern void Desk_File_LoadTo(const char *filename, void *address, int *size );
  67. extern void Desk_File_Date(const char *filename, char *fivebytedate);
  68. extern char* Desk_File_AllocLoad(const char* filename, int* lengthptr);
  69. extern char* Desk_File_AllocLoad0(const char *filename);
  70. extern int Desk_File_printf(Desk_file_handle file, const char *format, ...);
  71. extern int Desk_File_ReadExtent(Desk_file_handle handle);
  72. void Desk_File_SaveMemory2(const char* filename, void* buffer, int size, int filetype);
  73. #define Desk_File_SaveMemory(filename, buffer, size) Desk_File_SaveMemory2(filename, buffer, size, 0xfff)
  74. void Desk_File_EnsureDirectory(const char* path);
  75. void Desk_File_EnsureParentDirectory(const char* filename);
  76. #define Desk_FILETYPE(x) (((x) & 0xFFF00) >> 8)
  77. #define Desk_filetype_AIM 0x004
  78. #define Desk_filetype_CLEAR 0x690
  79. #define Desk_filetype_DEGAS 0x691
  80. #define Desk_filetype_IMG 0x692
  81. #define Desk_filetype_AMIGAIFF 0x693
  82. #define Desk_filetype_MACPAINT 0x694
  83. #define Desk_filetype_GIF 0x695
  84. #define Desk_filetype_PCX 0x697
  85. #define Desk_filetype_QRT 0x698
  86. #define Desk_filetype_MTV 0x699
  87. #define Desk_filetype_CADSOFT 0x69A
  88. #define Desk_filetype_IRLAM 0x69B
  89. #define Desk_filetype_BMP 0x69C
  90. #define Desk_filetype_TARGA 0x69D
  91. #define Desk_filetype_PBMPlus 0x69E
  92. #define Desk_filetype_ZVDA 0x69F
  93. #define Desk_filetype_MSX2 0x6A0
  94. #define Desk_filetype_RLE 0x6A1
  95. #define Desk_filetype_COLORIX 0x6A2
  96. #define Desk_filetype_FITS 0x6A3
  97. #define Desk_filetype_HAWKV9 0x6A4
  98. #define Desk_filetype_REPLAY 0xAE7
  99. #define Desk_filetype_ALARMS 0xAE9
  100. #define Desk_filetype_DRAWFILE 0xAFF
  101. #define Desk_filetype_BBCROM 0xBBC
  102. #define Desk_filetype_AUDIOWRK 0xBD6
  103. #define Desk_filetype_RENDPIC 0xD58
  104. #define Desk_filetype_ARCHIVE 0xDDC
  105. #define Desk_filetype_PROART 0xDE2
  106. #define Desk_filetype_PICTURE 0xDFA
  107. #define Desk_filetype_PRNTDEFN 0xFC6
  108. #define Desk_filetype_DOSDISC 0xFC8
  109. #define Desk_filetype_SUNRASTR 0xFC9
  110. #define Desk_filetype_DEVICE 0xFCC
  111. #define Desk_filetype_CACHE 0xFCF
  112. #define Desk_filetype_PCEMCONF 0xFD0
  113. #define Desk_filetype_DEBIMAGE 0xFD3
  114. #define Desk_filetype_TASKEXEC 0xFD6
  115. #define Desk_filetype_TASKOBEY 0xFD7
  116. #define Desk_filetype_MAKEFILE 0xFE1
  117. #define Desk_filetype_DOS 0xFE4
  118. #define Desk_filetype_DESKTOP 0xFEA
  119. #define Desk_filetype_OBEY 0xFEB
  120. #define Desk_filetype_TEMPLATE 0xFEC
  121. #define Desk_filetype_PALETTE 0xFED
  122. #define Desk_filetype_TIFF 0xFF0
  123. #define Desk_filetype_CONFIG 0xFF2
  124. #define Desk_filetype_PRINTOUT 0xFF4
  125. #define Desk_filetype_POSCRIPT 0xFF5
  126. #define Desk_filetype_FONT 0xFF6
  127. #define Desk_filetype_BBCFONT 0xFF7
  128. #define Desk_filetype_ABSOLUTE 0xFF8
  129. #define Desk_filetype_SPRITE 0xFF9
  130. #define Desk_filetype_MODULE 0xFFA
  131. #define Desk_filetype_BASIC 0xFFB
  132. #define Desk_filetype_UTILITY 0xFFC
  133. #define Desk_filetype_DATA 0xFFD
  134. #define Desk_filetype_COMMAND 0xFFE
  135. #define Desk_filetype_TEXT 0xFFF
  136. #define Desk_filetype_HTML 0xFAF
  137. #ifdef __cplusplus
  138. }
  139. #endif
  140. #endif
  141.